const api = require("../../utils/api");

// pages/myself/myself.js
Page({
    data: {
        isLogin: false, // 登录状态标记
        userId:null,
        userInfo:{},
    },
  
    onLoad() {
        // 页面加载时检查登录状态
        this.checkLoginStatus();
      },
    
      onShow() {
        // 页面显示时再次检查（从登录页返回时刷新状态）
        this.checkLoginStatus();
      },
    
      /**
       * 检查登录状态
       * 从本地存储获取用户信息，判断是否已登录
       */
      checkLoginStatus() {
        const userId = wx.getStorageSync('userId');
        const token = wx.getStorageSync('token');
    
        // 同时存在用户id和token，视为已登录
        if (userId && token) {
          this.setData({
            isLogin: true,
            userId: userId
          });
          this.loadUserInfo(userId);
        } else {
          // 未登录状态
          this.setData({
            isLogin: false,
          });
        }
      },
    
      /**
       * 跳转到登录页
       */
      goToLogin() {
        wx.navigateTo({
          url: `/pages/login/login?redirect=/pages/myself/myself` // 登录后返回当前页面
        });
      },

    // 加载用户信息
    loadUserInfo(id){
        api.my.getUserInfo(id).then(res => {
            const userVO = res.data || res.list || res;
            wx.setStorageSync('userInfo', userVO);
            this.setData({
                userInfo: userVO
            })
        }).catch(err => {
            console.error('加载用户信息失败',err);
        })
    },

    //修改个人信息跳转
    gotoChangeMy(){
        wx.navigateTo({
            url: `/pages/changMy/changeMy?avatar=${encodeURIComponent(this.data.userInfo.avatar)}&nickname=${encodeURIComponent(this.data.userInfo.nickname)}`
        })
    },

    //意见反馈页面跳转
    gotoFeedBack(){
        wx.navigateTo({
          url: '/pages/feedBack/commit',
        })
    },



      /**
       * 退出登录
       */
      logout() {
        wx.showModal({
        title: '确认退出',
        content: '是否退出当前登录？',
        success: (res) => {
            if (res.confirm) {
            // 清除本地存储的用户信息和token
            wx.removeStorageSync('userInfo');
            wx.removeStorageSync('token');
            // 更新页面状态
            this.setData({
                isLogin: false,
                userInfo: {}
            });
            wx.showToast({
                title: '已退出登录',
                icon: 'none'
            });
            }
        }
        });
      }
   

  });